{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 原文地址：https://towardsdatascience.com/the-most-underrated-python-packages-e22bf6049b5e?gi=f9ed1a098270\n",
    "\n",
    "在这篇文章中，我们想展示一些不同于流行的东西。这些都是深夜浏览 GitHub 的感悟，以及同事们分享的压箱底东西。这些软件包中的一些是非常独特的，使用起来很有趣的 Python 包。\n",
    "\n",
    "\n",
    "混合派\n",
    "---\n",
    "\n",
    "1.  Knock Knock: 从 Python 发送通知到移动设备、桌面或电子邮件。\n",
    "2.  tqdm: 可扩展的 Python 和 CLI 进度条，内置对 pandas 的支持。\n",
    "3.  Colorama: 简单的跨平台彩色终端文本。\n",
    "4.  pandas -log: 提供熊猫基本操作的反馈。非常适合调试长管道链。\n",
    "5.  Pandas-flavor: 扩展 pandas DataFrame/Series 的简单方法。\n",
    "6.  More-Itertools: 增加了类似于 itertools 的额外功能。\n",
    "7.  streamlit: 为机器学习项目创建应用程序的简单方法。\n",
    "    \n",
    "\n",
    "数据清理和操作\n",
    "-------\n",
    "\n",
    "1.  ftfy: 修复 mojibake 和 Unicode 文本中的其他故障。\n",
    "2.  janitor: 有很多很酷的功能来清理数据。\n",
    "3.  Optimus: 另一个数据清理包。\n",
    "4.  Great-experctations: 一个检查数据是否符合预期的好工具。\n",
    "\n",
    "\n",
    "数据探索和建模\n",
    "-------\n",
    "\n",
    "1.  Pandas-profile: 创建一个包含来自 pandas DataFrame 的统计数据的 HTML 报告。\n",
    "2.  dabl: 允许使用可视化和预处理进行数据探索。\n",
    "3.  pydqc: 允许比较两个数据集之间的统计数据。\n",
    "4.  pandas-summary: 对 panda DataFrames 描述功能的扩展。\n",
    "5.  pivottable-js:pands 在 jupyter notebook 的拖放功能。\n",
    "    \n",
    "\n",
    "数据结构\n",
    "----\n",
    "\n",
    "1.  Bounter: 有效的计数器，使用有限 (有界) 的数量的内存，无论数据大小。\n",
    "2.  Python -bloomfilter: 可扩展的 Bloom Filter，使用 Python 实现。\n",
    "3.  datasketch: 提供概率数据结构，如 LSH、加权 MinHash、HyperLogLog 等。\n",
    "4.  ranges:Python 的连续范围、范围集和范围令数据结构\n",
    "    \n",
    "性能检查和优化\n",
    "-------\n",
    "\n",
    "1.  Py-spy: Python 程序的采样分析器。\n",
    "2.  pyperf: 用于运行 Python 基准测试的工具箱。\n",
    "3.  snakeviz: 一个浏览器内的 Python 配置文件查看器，对 jupyter notebook 有很大的支持。\n",
    "4.  Cachier: Python 函数的持久、无延迟、本地和跨机缓存。\n",
    "5.  Faiss: 用于高效的相似性搜索和密集向量聚类的库。\n",
    "    "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.7"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  },
  "varInspector": {
   "cols": {
    "lenName": 16,
    "lenType": 16,
    "lenVar": 40
   },
   "kernels_config": {
    "python": {
     "delete_cmd_postfix": "",
     "delete_cmd_prefix": "del ",
     "library": "var_list.py",
     "varRefreshCmd": "print(var_dic_list())"
    },
    "r": {
     "delete_cmd_postfix": ") ",
     "delete_cmd_prefix": "rm(",
     "library": "var_list.r",
     "varRefreshCmd": "cat(var_dic_list()) "
    }
   },
   "types_to_exclude": [
    "module",
    "function",
    "builtin_function_or_method",
    "instance",
    "_Feature"
   ],
   "window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
